package org.chen.service;

import com.baomidou.mybatisplus.extension.service.IService;
import org.chen.domain.dto.*;
import org.chen.domain.entity.UserVideoConfig;
import org.chen.domain.response.PageResult;
import org.chen.domain.vo.ConfigVO;
import org.chen.domain.vo.MultiAvatarConfigVO;

import java.util.List;

public interface ConfigService extends IService<UserVideoConfig> {
    void saveConfig(ConfigDTO configDTO);

    List<ConfigVO> getDefaultConfig();

    PageResult<ConfigVO> getConfigList(ConfigQueryDTO queryDTO);

    void setDefaultConfig(String id);

    void setCaptionConfig(String id);

    void deleteConfig(String id);

    void batchDelete(BatchConfigDeleteDTO request);

    List<ConfigVO> getMultiConfig();

    /**
     * 保存多数字人配置
     * @param configDTO 多数字人配置DTO
     */
    void saveMultiAvatarConfig(MultiAvatarConfigDTO configDTO);

    /**
     * 获取多数字人配置详情
     * @param id 配置ID
     * @return 多数字人配置详情
     */
    MultiAvatarConfigVO getMultiAvatarConfig(String id);

    /**
     * 删除多数字人配置
     * @param id 配置ID
     */
    void deleteMultiAvatarConfig(String id);
}
